import axios from 'axios';

// 创建axios实例
const service = axios.create({
  baseURL: "http://localhost:11011", // api的base_url
  timeout: 5000 // 请求超时时间
});

// 请求拦截器
service.interceptors.request.use(
  config => {
    // 在这里可以做一些请求前的操作，如添加token等
    return config;
  },
  error => {
    // 处理请求错误
    console.error('请求错误:', error); // for debug
    Promise.reject(error);
  }
);

// 响应拦截器
service.interceptors.response.use(
  response => {
    // 在这里可以对响应数据做一些处理
  return response.data;
},
error => {
  // 处理响应错误
  console.error('响应错误:', error); // for debug
  return Promise.reject(error);
}
);

// 封装get请求
export function fetch(url, params = {}) {
  return service.get(url, { params });
}

// 封装post请求
export function post(url, data = {}) {
  // 这里使用的是post，参数是请求路径和对应的数据，数据是一个对象
  return service.post(url, data);
}

// 封装put请求
export function put(url, data = {}) {
  return service.put(url, data);
}

// 封装delete请求
export function del(url, params = {}) {
  return service.delete(url, { params });
}

export default {service};